package lu.med.praxiswahl.wahlumed.model.beans;

import java.io.Serializable;
import java.util.Calendar;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.OneToOne;
import javax.persistence.Table;
import javax.persistence.Temporal;

@Entity
@Table(name = "PRAXIS_LABORBUCH")
public class LaborbookTBL implements Serializable
{

    private static final long serialVersionUID = 1L;

    @Column(name = "ID")
    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private Long id;

    private String datum;
    private String art_des_tests;
    private String year;

    @Column(name = "EINTRAG_NUMMER")
    private int nummer;

    private String abgeholt;

    private String abgegeben;
    @Column(name = "LOCKED")
	private Boolean locked;

	@OneToOne
	@JoinColumn(name = "LAST_EDITOR", nullable = true)
	private AccountingTBL lastEditor;

	@Column(name = "LAST_EDITED")
	@Temporal(javax.persistence.TemporalType.TIMESTAMP)
	private Calendar lastEditTime;
	

    @ManyToOne
    @JoinColumn(name = "patientin_matricule_nummer", nullable = false)
    private CustomerTBL customer;

    public LaborbookTBL()
    {

    }

    public Long getId()
    {
	return id;
    }

    public void setId(Long id)
    {
	this.id = id;
    }

    public String getDatum()
    {
	return datum;
    }

    public void setDatum(String datum)
    {
	this.datum = datum;
    }

    public String getArt_des_tests()
    {
	return art_des_tests;
    }

    public void setArt_des_tests(String art_des_tests)
    {
	this.art_des_tests = art_des_tests;
    }

    public static long getSerialVersionUID()
    {
	return serialVersionUID;
    }

    public int getNummer()
    {
	return nummer;
    }

    public void setNummer(int nummer)
    {
	this.nummer = nummer;
    }

    public CustomerTBL getCustomer()
    {
	return customer;
    }

    public void setCustomer(CustomerTBL customer)
    {
	this.customer = customer;
    }

    public String getYear()
    {
	return year;
    }

    public void setYear(String year)
    {
	this.year = year;
    }

    public String getAbgeholt()
    {
	return abgeholt;
    }

    public void setAbgeholt(String abgeholt)
    {
	this.abgeholt = abgeholt;
    }

    public String getAbgegeben()
    {
	return abgegeben;
    }

    public void setAbgegeben(String abgegeben)
    {
	this.abgegeben = abgegeben;
    }

	public Boolean getLocked() {
		return locked;
	}

	public void setLocked(Boolean locked) {
		this.locked = locked;
	}

	public AccountingTBL getLastEditor() {
		return lastEditor;
	}

	public void setLastEditor(AccountingTBL lastEditor) {
		this.lastEditor = lastEditor;
	}

	public Calendar getLastEditTime() {
		return lastEditTime;
	}

	public void setLastEditTime(Calendar lastEditTime) {
		this.lastEditTime = lastEditTime;
	}

}
